package com.pro.common.service.sitecontent.enums.init;

import com.pro.common.api.CommonConst;
import com.pro.common.service.sitecontent.enums.EnumAuthRouteType;
import com.pro.common.api.enums.EnumSysRole;
import com.pro.common.service.sitecontent.enums.init.IEnumToDbEnumAuthRoute;
import com.pro.framework.api.enums.EnumToDbEnum;
import com.pro.framework.api.enums.IEnumToDbEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;

import static com.pro.common.service.sitecontent.enums.EnumAuthRouteType.*;
import static com.pro.common.api.enums.EnumSysRole.ADMIN;


@Getter
@AllArgsConstructor
public enum EnumAuthRouteUser implements IEnumToDbEnumAuthRoute {
    catalog_user(ADMIN, null, CATALOG, "用户管理", null, "el-icon-user-solid", null, null, null, null, null, 16000, true, null),
    user(ADMIN, catalog_user, MENU, "用户", "/user/user", null, null, null, null, null, null, 16100, true, null),
    user_QUERY(ADMIN, user, BUTTON, "查询", null, null, "user,userMoney,userAmountTotal,userLevelConfig", null, null, null, null, 16100, true, null),
    user_ALL(ADMIN, user, BUTTON, "管理", null, null, "#ALL#user,userMoney,userAmountTotal,userLevelConfig", null, null, null, null, 16101, true, null),
    USER_LOGIN_BY_TOKEN(ADMIN, user, BUTTON, "一键登录", null, null, "/admin/loginByToken", null, null, null, null, 16101, true, null),

    userAddress(ADMIN, catalog_user, MENU, "用户地址", "/user/userAddress", null, null, null, null, null, null, 16800, true, null),
    userAddress_QUERY(ADMIN, userAddress, BUTTON, "查询", null, null, "userAddress", null, null, null, null, 16800, true, null),
    userAddress_ALL(ADMIN, userAddress, BUTTON, "管理", null, null, "#ALL#userAddress", null, null, null, null, 16801, true, null),
    userBankCard(ADMIN, catalog_user, MENU, "用户银行卡", "/user/userBankCard", null, null, null, null, null, null, 16500, true, null),
    userBankCard_QUERY(ADMIN, userBankCard, BUTTON, "查询", null, null, "userBankCard", null, null, null, null, 16500, true, null),
    userBankCard_ALL(ADMIN, userBankCard, BUTTON, "管理", null, null, "#ALL#userBankCard", null, null, null, null, 16501, true, null),
//    userBoss(ADMIN, catalog_user, MENU, "用户", "/user/userBoss", null, null, null, null, null, null, 16500, true, null),
//    userBoss_QUERY(ADMIN, userBoss, BUTTON, "查询", null, null, "userBoss", null, null, null, null, 16500, true, null),
//    userBoss_ALL(ADMIN, userBoss, BUTTON, "管理", null, null, "#ALL#userBoss", null, null, null, null, 16501, true, null),
    userLevelConfig(ADMIN, catalog_user, MENU, "用户等级配置", "/user/userLevelConfig", null, null, null, null, null, null, 16500, true, null),
    userLevelConfig_QUERY(ADMIN, userLevelConfig, BUTTON, "查询", null, null, "userLevelConfig", null, null, null, null, 16500, true, null),
    userLevelConfig_ALL(ADMIN, userLevelConfig, BUTTON, "管理", null, null, "#ALL#userLevelConfig", null, null, null, null, 16501, true, null),

// 可以继续添加其他模块...
    ;
    private final EnumSysRole sysRole;
    private final EnumAuthRouteUser pcode;
    private final EnumAuthRouteType type;
    private final String routeName;
    private final String componentPath;
    private final String icon;
    private final String permissionPaths;
    private final String pic;
    private final String url;
    private final String remark;
    private final Boolean enabled;
    private final Integer sort;
    private final Boolean showFlag;

    private final String forceChangeTime;

    //    @Override
//    public String getToDbCode() {
//        return sysRole + CommonConst.Str.SPLIT + name();
//    }
}
